﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using RzCorportativo.Lib;

namespace RzCorportativo.Views
{
    public partial class ItemConhecimentoUsuario : System.Web.UI.UserControl
    {
        private List<AreaConhecimento> Areas{get;set;}

        protected List<ItemAreaConhecimento> ItensUsuario { get; set; }

        protected void ForEachAreas(Action<AreaConhecimento> callback)
        {
            if(this.Areas != null && callback != null)
                foreach (var item in this.Areas)
                {
                    callback(item);
                }
        }

        public bool IsChecked(ItemAreaConhecimento item)
        {
            if (this.ItensUsuario == null)
                return false;
            return this.ItensUsuario.Any(f => f.ItemAreaConhecimentoId == item.ItemAreaConhecimentoId);
        }

        public void LoadUserItens(List<ItemAreaConhecimento> itens)
        {
            this.ItensUsuario = itens;
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (this.IsPostBack)
                return;
            this.Areas = Lib.AreaConhecimento.Listar(new Lib.AreaConhecimento());
        }
    }
}